application: sync clipboard and recent manager on shutdown
authorCosimo Cecchi <cosimoc@gnome.org>
Wed, 25 Jan 2012 23:30:48 +0000 (18:30 -0500)
committerCosimo Cecchi <cosimoc@gnome.org>
Wed, 25 Jan 2012 23:31:25 +0000 (18:31 -0500)
This mimics the code for gtk_main(), since GApplication iterates the
main context directly.

gtk/gtkapplication.c

index e3ead26d4bacec0571ccb3f1e0f76343fcb89d2d..ac54e1e016ecaae556d5b6a6a8a29a1babf73d42 100644 (file)
 #include <string.h>
 
 #include "gtkapplicationprivate.h"
+#include "gtkclipboard.h"
 #include "gtkmarshalers.h"
 #include "gtkmain.h"
+#include "gtkrecentmanager.h"
 #include "gtkaccelmapprivate.h"
 #include "gactionmuxer.h"
 #include "gtkintl.h"
@@ -464,6 +466,12 @@ gtk_application_shutdown (GApplication *application)
   gtk_application_shutdown_quartz (GTK_APPLICATION (application));
 #endif
 
+  /* Try storing all clipboard data we have */
+  _gtk_clipboard_store_all ();
+
+  /* Synchronize the recent manager singleton */
+  _gtk_recent_manager_sync ();
+
   G_APPLICATION_CLASS (gtk_application_parent_class)
     ->shutdown (application);
 }